/*
 * Description: 通信方法代码定义
 */
#ifndef INTERFACE_H
#define INTERFACE_H

#include <string>
#include <cstdint>
namespace GUEST {
enum class OPCode {
    SHUTDOWN,
    FORCESHUTDOWN,
    DISCONNECT,
    NETCONFIG,
    UPDATAFILE,
    CORRECTTIME,
    SETOSTYPE,
    CHANGENAME,
    MOUNT_SHARED_FOLDER,
    UNMOUNT_SHARED_FOLDER,
    ENABLE_2D,
    GET_AVAILABLE_LETTER_COUNT,
    LOCK,
    SHARE_FOLDER_SERVICE_IS_READY,
    COPY_PASTE_FILE_STATUS,
    COMPRESS_DECOMPRESS_STATUS,
    IS_APPLICATION_WINDOW_OPENED,
    IS_WIN_LOGON,
    NOTIFY_UP_TO_DATE,
    MODIFY_RESOLUTION,
    SET_TOUCH_KEYBOARD_VISIBILITY,
    QUICKSHUTDOWN,
    SYNC_IDENTITY_INFO,
    SET_SYNC_DNS_ENABLED,
    SYNC_PROXY,
    SYNC_DNS,
    CHECK_WINUPDATE,
    SERVICE_ALIVE,
    TRIGGER_UPDATE,
    INSTALL_CONFIG,
#ifdef _FUZZ
    STARTFUZZ,
#endif
};
}

namespace WINCONTROL {

enum SendToHostEvent : int {
    BOOT_COMPLETE = 1,
    IS_GUEST_STARTED,
    SHUTDOWN,
    FORCESHUTDOWN,
    GUEST_SESSION_CHANGE,
    PERF_REQUEST,
    ENABLE_DISABLE_SCREEN_LOCK,
    REPORT_APP_STATISTICS,
    QUICKSTART_SHUTDOWN,
    REPORT_STABILITY_EVENT,
    UMOUNT_UNATTEND,
    SYNC_UPDATE_PROC_STATUS,
#ifdef _FUZZ
    STARTFUZZ,
#endif
};
}

#endif